import"../models/models.js";var e,t,n,a=Object.freeze({__proto__:null});!function(e){e.CSS="css",e.ARIA="aria",e.Text="text",e.XPath="xpath",e.Pierce="pierce"}(e=e||(e={})),function(e){e.Change="change",e.Click="click",e.Close="close",e.CustomStep="customStep",e.DoubleClick="doubleClick",e.EmulateNetworkConditions="emulateNetworkConditions",e.Hover="hover",e.KeyDown="keyDown",e.KeyUp="keyUp",e.Navigate="navigate",e.Scroll="scroll",e.SetViewport="setViewport",e.WaitForElement="waitForElement",e.WaitForExpression="waitForExpression"}(t=t||(t={})),(n=n||(n={})).Navigation="navigation";Object.freeze({__proto__:null,get SelectorType(){return e},get StepType(){return t},get AssertedEventType(){return n}});function i(e){throw new Error(`Unknown step type: ${e.type}`)}const r=new Set(["textarea","text","url","tel","search","password","number","email"]),o=(new Set(["mouse","pen","touch"]),new Map([["primary","left"],["auxiliary","middle"],["secondary","right"],["back","back"],["forward","forward"]]));class s{async beforeAllSteps(e,t){}async afterAllSteps(e,t){}async beforeEachStep(e,t,n){}async stringifyStep(e,t,n){}async afterEachStep(e,t,n){}}class l extends s{async beforeAllSteps(e,t){const n={...t,steps:void 0},a=JSON.stringify(n,null,e.getIndent()).split("\n");a.pop(),a[a.length-1]+=",",a.push(e.getIndent()+'"steps": ['),e.appendLine(a.join("\n")).startBlock().startBlock()}async afterAllSteps(e){e.endBlock().endBlock().appendLine(e.getIndent()+"]").appendLine("}")}async stringifyStep(e,t,n){const a=JSON.stringify(t,null,e.getIndent());if(!n)return void e.appendLine(a);const i=n.steps.lastIndexOf(t)===n.steps.length-1?"":",";e.appendLine(a+i)}}function p(e,t,n,a){if("a"===n&&!a)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!a:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?a:"a"===n?a.call(e):a?a.value:t.get(e)}function c(e,t,n,a,i){if("m"===a)throw new TypeError("Private method is not writable");if("a"===a&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===a?i.call(e,n):i?i.value=n:t.set(e,n),n}var u,d,f;class w{constructor(e){u.set(this,void 0),d.set(this,0),f.set(this,[]),c(this,u,e,"f")}appendLine(e){const t=e.split("\n").map((e=>e?p(this,u,"f").repeat(p(this,d,"f"))+e.trimEnd():""));return p(this,f,"f").push(...t),this}startBlock(){var e;return c(this,d,(e=p(this,d,"f"),++e),"f"),this}endBlock(){var e;return c(this,d,(e=p(this,d,"f"),--e),"f"),this}toString(){return p(this,f,"f").join("\n")+"\n"}getIndent(){return p(this,u,"f")}getSize(){return p(this,f,"f").length}}function m(e,t){const n=[];return h(e,n,1,t),n.join("")}function h(e,t=[],n=1,a="  "){switch(typeof e){case"bigint":case"symbol":case"function":case"undefined":throw new Error("Invalid JSON");case"number":case"boolean":t.push(String(e));break;case"string":t.push(v(e));break;case"object":if(null===e)t.push("null");else if(Array.isArray(e)){t.push("[\n");for(let i=0;i<e.length;i++)t.push(a.repeat(n)),h(e[i],t,n+1,a),i!==e.length-1&&t.push(","),t.push("\n");t.push(a.repeat(n-1)+"]")}else{t.push("{\n");const i=Object.keys(e);for(let r=0;r<i.length;r++){const o=i[r],s=e[o];void 0!==s&&(t.push(a.repeat(n)),t.push(o),t.push(": "),h(s,t,n+1,a),r!==i.length-1&&t.push(","),t.push("\n"))}t.push(a.repeat(n-1)+"}")}break;default:throw new Error("Unknown object type")}return t}u=new WeakMap,d=new WeakMap,f=new WeakMap;const g=(e,t)=>e.toString(16).toUpperCase().padStart(t,"0"),y=new Map([["\b","\\b"],["\f","\\f"],["\n","\\n"],["\r","\\r"],["\t","\\t"],["\v","\\v"],["'","\\'"],["\\","\\\\"],["\x3c!--","\\x3C!--"],["<script","\\x3Cscript"],["</script","\\x3C/script"]]),v=e=>{const t=/(\\|<(?:!--|\/?script))|(\p{Control})|(\p{Surrogate})/gu,n=(e,t,n,a)=>n?y.has(n)?y.get(n):"\\x"+g(n.charCodeAt(0),2):a?"\\u"+g(a.charCodeAt(0),4):t?y.get(t)||"":e;let a="",i="";return e.includes("'")?e.includes('"')?e.includes("`")||e.includes("${")?(i="'",a=e.replace(/(\\|'|<(?:!--|\/?script))|(\p{Control})|(\p{Surrogate})/gu,n)):(i="`",a=e.replace(t,n)):(i='"',a=e.replace(t,n)):(i="'",a=e.replace(t,n)),`${i}${a}${i}`};var L,b,S,E,x,k,F,$,I,C,T,A,j,P,_,N,M,V,O;class B extends s{constructor(){super(...arguments),L.add(this)}async beforeAllSteps(e,t){e.appendLine("const puppeteer = require('puppeteer'); // v13.0.0 or later"),e.appendLine(""),e.appendLine("(async () => {").startBlock(),e.appendLine("const browser = await puppeteer.launch();"),e.appendLine("const page = await browser.newPage();"),e.appendLine(`const timeout = ${t.timeout||W};`),e.appendLine("page.setDefaultTimeout(timeout);"),e.appendLine("")}async afterAllSteps(e,t){e.appendLine(""),e.appendLine("await browser.close();"),e.appendLine("");for(const t of R.split("\n"))e.appendLine(t);e.endBlock().appendLine("})().catch(err => {").startBlock(),e.appendLine("console.error(err);"),e.appendLine("process.exit(1);"),e.endBlock().appendLine("});")}async stringifyStep(e,t,a){if(e.appendLine("{").startBlock(),void 0!==t.timeout&&e.appendLine(`const timeout = ${t.timeout};`),p(this,L,"m",E).call(this,e,t),t.assertedEvents){e.appendLine("const promises = [];");for(const a of t.assertedEvents){if(a.type!==n.Navigation)throw new Error(`Event type ${a.type} is not supported`);e.appendLine(`promises.push(${"frame"in t&&t.frame?"frame":"targetPage"}.waitForNavigation());`)}}p(this,L,"m",N).call(this,e,t),t.assertedEvents&&e.appendLine("await Promise.all(promises);"),e.endBlock().appendLine("}")}}L=new WeakSet,b=function(e,t){"main"===t?e.appendLine("const targetPage = page;"):(e.appendLine(`const target = await browser.waitForTarget(t => t.url() === ${m(t,e.getIndent())}, { timeout });`),e.appendLine("const targetPage = await target.page();"),e.appendLine("targetPage.setDefaultTimeout(timeout);"))},S=function(e,t){e.appendLine("let frame = targetPage.mainFrame();");for(const n of t)e.appendLine(`frame = frame.childFrames()[${n}];`)},E=function(e,t){p(this,L,"m",b).call(this,e,t.target||"main"),t.frame&&p(this,L,"m",S).call(this,e,t.frame)},x=function(e,t){e.appendLine(`await scrollIntoViewIfNeeded(${m(t.selectors,e.getIndent())}, ${t.frame?"frame":"targetPage"}, timeout);`),e.appendLine(`const element = await waitForSelectors(${m(t.selectors,e.getIndent())}, ${t.frame?"frame":"targetPage"}, { timeout, visible: true });`)},k=function(e,t){p(this,L,"m",x).call(this,e,t),e.appendLine("await element.click({"),t.duration&&e.appendLine(`  delay: ${t.duration},`),t.button&&e.appendLine(`  button: '${o.get(t.button)}',`),e.appendLine("  offset: {"),e.appendLine(`    x: ${t.offsetX},`),e.appendLine(`    y: ${t.offsetY},`),e.appendLine("  },"),e.appendLine("});")},F=function(e,t){p(this,L,"m",x).call(this,e,t),e.appendLine("await element.click({"),t.button&&e.appendLine(`  button: '${o.get(t.button)}',`),e.appendLine("  offset: {"),e.appendLine(`    x: ${t.offsetX},`),e.appendLine(`    y: ${t.offsetY},`),e.appendLine("  },"),e.appendLine("});"),e.appendLine("await element.click({"),e.appendLine("  clickCount: 2,"),t.duration&&e.appendLine(`  delay: ${t.duration},`),t.button&&e.appendLine(`  button: '${o.get(t.button)}',`),e.appendLine("  offset: {"),e.appendLine(`    x: ${t.offsetX},`),e.appendLine(`    y: ${t.offsetY},`),e.appendLine("  },"),e.appendLine("});")},$=function(e,t){p(this,L,"m",x).call(this,e,t),e.appendLine("await element.hover();")},I=function(e,t){p(this,L,"m",x).call(this,e,t),e.appendLine("const inputType = await element.evaluate(el => el.type);"),e.appendLine("if (inputType === 'select-one') {"),e.appendLine(`  await changeSelectElement(element, ${m(t.value,e.getIndent())})`),e.appendLine(`} else if (${m(Array.from(r),e.getIndent())}.includes(inputType)) {`),e.appendLine(`  await typeIntoElement(element, ${m(t.value,e.getIndent())});`),e.appendLine("} else {"),e.appendLine(`  await changeElementValue(element, ${m(t.value,e.getIndent())});`),e.appendLine("}")},C=function(e,t){e.appendLine("await targetPage.emulateNetworkConditions({"),e.appendLine(`  offline: ${!t.download&&!t.upload},`),e.appendLine(`  downloadThroughput: ${t.download},`),e.appendLine(`  uploadThroughput: ${t.upload},`),e.appendLine(`  latency: ${t.latency},`),e.appendLine("});")},T=function(e,t){e.appendLine(`await targetPage.keyboard.down(${m(t.key,e.getIndent())});`)},A=function(e,t){e.appendLine(`await targetPage.keyboard.up(${m(t.key,e.getIndent())});`)},j=function(e,t){e.appendLine("await targetPage.close()")},P=function(e,t){e.appendLine(`await targetPage.setViewport(${m({width:t.width,height:t.height},e.getIndent())})`)},_=function(e,t){"selectors"in t?(p(this,L,"m",x).call(this,e,t),e.appendLine(`await element.evaluate((el, x, y) => { el.scrollTop = y; el.scrollLeft = x; }, ${t.x}, ${t.y});`)):e.appendLine(`await targetPage.evaluate((x, y) => { window.scroll(x, y); }, ${t.x}, ${t.y})`)},N=function(e,n){switch(n.type){case t.Click:return p(this,L,"m",k).call(this,e,n);case t.DoubleClick:return p(this,L,"m",F).call(this,e,n);case t.Hover:return p(this,L,"m",$).call(this,e,n);case t.Change:return p(this,L,"m",I).call(this,e,n);case t.EmulateNetworkConditions:return p(this,L,"m",C).call(this,e,n);case t.KeyDown:return p(this,L,"m",T).call(this,e,n);case t.KeyUp:return p(this,L,"m",A).call(this,e,n);case t.Close:return p(this,L,"m",j).call(this,e,n);case t.SetViewport:return p(this,L,"m",P).call(this,e,n);case t.Scroll:return p(this,L,"m",_).call(this,e,n);case t.Navigate:return p(this,L,"m",M).call(this,e,n);case t.WaitForElement:return p(this,L,"m",O).call(this,e,n);case t.WaitForExpression:return p(this,L,"m",V).call(this,e,n);case t.CustomStep:return;default:return i(n)}},M=function(e,t){e.appendLine(`await targetPage.goto(${m(t.url,e.getIndent())});`)},V=function(e,t){e.appendLine(`await ${t.frame?"frame":"targetPage"}.waitForFunction(${m(t.expression,e.getIndent())}, { timeout });`)},O=function(e,t){e.appendLine(`await waitForElement(${m(t,e.getIndent())}, ${t.frame?"frame":"targetPage"}, timeout);`)};const W=5e3,R="async function waitForSelectors(selectors, frame, options) {\n  for (const selector of selectors) {\n    try {\n      return await waitForSelector(selector, frame, options);\n    } catch (err) {\n      console.error(err);\n    }\n  }\n  throw new Error('Could not find element for selectors: ' + JSON.stringify(selectors));\n}\n\nasync function scrollIntoViewIfNeeded(selectors, frame, timeout) {\n  const element = await waitForSelectors(selectors, frame, { visible: false, timeout });\n  if (!element) {\n    throw new Error(\n      'The element could not be found.'\n    );\n  }\n  await waitForConnected(element, timeout);\n  const isInViewport = await element.isIntersectingViewport({threshold: 0});\n  if (isInViewport) {\n    return;\n  }\n  await element.evaluate(element => {\n    element.scrollIntoView({\n      block: 'center',\n      inline: 'center',\n      behavior: 'auto',\n    });\n  });\n  await waitForInViewport(element, timeout);\n}\n\nasync function waitForConnected(element, timeout) {\n  await waitForFunction(async () => {\n    return await element.getProperty('isConnected');\n  }, timeout);\n}\n\nasync function waitForInViewport(element, timeout) {\n  await waitForFunction(async () => {\n    return await element.isIntersectingViewport({threshold: 0});\n  }, timeout);\n}\n\nasync function waitForSelector(selector, frame, options) {\n  if (!Array.isArray(selector)) {\n    selector = [selector];\n  }\n  if (!selector.length) {\n    throw new Error('Empty selector provided to waitForSelector');\n  }\n  let element = null;\n  for (let i = 0; i < selector.length; i++) {\n    const part = selector[i];\n    if (element) {\n      element = await element.waitForSelector(part, options);\n    } else {\n      element = await frame.waitForSelector(part, options);\n    }\n    if (!element) {\n      throw new Error('Could not find element: ' + selector.join('>>'));\n    }\n    if (i < selector.length - 1) {\n      element = (await element.evaluateHandle(el => el.shadowRoot ? el.shadowRoot : el)).asElement();\n    }\n  }\n  if (!element) {\n    throw new Error('Could not find element: ' + selector.join('|'));\n  }\n  return element;\n}\n\nasync function waitForElement(step, frame, timeout) {\n  const {\n    count = 1,\n    operator = '>=',\n    visible = true,\n    properties,\n    attributes,\n  } = step;\n  const compFn = {\n    '==': (a, b) => a === b,\n    '>=': (a, b) => a >= b,\n    '<=': (a, b) => a <= b,\n  }[operator];\n  await waitForFunction(async () => {\n    const elements = await querySelectorsAll(step.selectors, frame);\n    let result = compFn(elements.length, count);\n    const elementsHandle = await frame.evaluateHandle((...elements) => {\n      return elements;\n    }, ...elements);\n    await Promise.all(elements.map((element) => element.dispose()));\n    if (result && (properties || attributes)) {\n      result = await elementsHandle.evaluate(\n        (elements, properties, attributes) => {\n          for (const element of elements) {\n            if (attributes) {\n              for (const [name, value] of Object.entries(attributes)) {\n                if (element.getAttribute(name) !== value) {\n                  return false;\n                }\n              }\n            }\n            if (properties) {\n              if (!isDeepMatch(properties, element)) {\n                return false;\n              }\n            }\n          }\n          return true;\n\n          function isDeepMatch(a, b) {\n            if (a === b) {\n              return true;\n            }\n            if ((a && !b) || (!a && b)) {\n              return false;\n            }\n            if (!(a instanceof Object) || !(b instanceof Object)) {\n              return false;\n            }\n            for (const [key, value] of Object.entries(a)) {\n              if (!isDeepMatch(value, b[key])) {\n                return false;\n              }\n            }\n            return true;\n          }\n        },\n        properties,\n        attributes\n      );\n    }\n    await elementsHandle.dispose();\n    return result === visible;\n  }, timeout);\n}\n\nasync function querySelectorsAll(selectors, frame) {\n  for (const selector of selectors) {\n    const result = await querySelectorAll(selector, frame);\n    if (result.length) {\n      return result;\n    }\n  }\n  return [];\n}\n\nasync function querySelectorAll(selector, frame) {\n  if (!Array.isArray(selector)) {\n    selector = [selector];\n  }\n  if (!selector.length) {\n    throw new Error('Empty selector provided to querySelectorAll');\n  }\n  let elements = [];\n  for (let i = 0; i < selector.length; i++) {\n    const part = selector[i];\n    if (i === 0) {\n      elements = await frame.$$(part);\n    } else {\n      const tmpElements = elements;\n      elements = [];\n      for (const el of tmpElements) {\n        elements.push(...(await el.$$(part)));\n      }\n    }\n    if (elements.length === 0) {\n      return [];\n    }\n    if (i < selector.length - 1) {\n      const tmpElements = [];\n      for (const el of elements) {\n        const newEl = (await el.evaluateHandle(el => el.shadowRoot ? el.shadowRoot : el)).asElement();\n        if (newEl) {\n          tmpElements.push(newEl);\n        }\n      }\n      elements = tmpElements;\n    }\n  }\n  return elements;\n}\n\nasync function waitForFunction(fn, timeout) {\n  let isActive = true;\n  const timeoutId = setTimeout(() => {\n    isActive = false;\n  }, timeout);\n  while (isActive) {\n    const result = await fn();\n    if (result) {\n      clearTimeout(timeoutId);\n      return;\n    }\n    await new Promise(resolve => setTimeout(resolve, 100));\n  }\n  throw new Error('Timed out');\n}\n\nasync function changeSelectElement(element, value) {\n  await element.select(value);\n  await element.evaluateHandle((e) => {\n    e.blur();\n    e.focus();\n  });\n}\n\nasync function changeElementValue(element, value) {\n  await element.focus();\n  await element.evaluate((input, value) => {\n    input.value = value;\n    input.dispatchEvent(new Event('input', { bubbles: true }));\n    input.dispatchEvent(new Event('change', { bubbles: true }));\n  }, value);\n}\n\nasync function typeIntoElement(element, value) {\n  const textToType = await element.evaluate((input, newValue) => {\n    if (\n      newValue.length <= input.value.length ||\n      !newValue.startsWith(input.value)\n    ) {\n      input.value = '';\n      return newValue;\n    }\n    const originalValue = input.value;\n    input.value = '';\n    input.value = originalValue;\n    return newValue.substring(originalValue.length);\n  }, value);\n  await element.type(textToType);\n}",z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",D=z.split("").reduce(((e,t,n)=>(e.set(t,n),e)),new Map);function H(e){if(e<0)throw new Error("Only postive integers and zero are supported");if(e>2147483647)throw new Error("Only integers between 0 and 2147483647 are supported");const t=[];do{let n=31&e;(e>>>=5)>0&&(n|=32),t.push(z[n])}while(0!==e);return t.join("")}function q(e){const t=[],n=e.split("");let a=0,i=0;for(const e of n){const n=D.get(e);a|=(31&n)<<i,i+=5,32&n||(t.push(a),a=0,i=0)}return t}async function J(e,t){var n,a,i,r,o,s,l;t||(t={});const p=null!==(n=t.extension)&&void 0!==n?n:new B,c=null!==(a=t.writer)&&void 0!==a?a:new w(null!==(i=t.indentation)&&void 0!==i?i:"  ");await(null===(r=p.beforeAllSteps)||void 0===r?void 0:r.call(p,c,e));const u=[1];for(const t of e.steps){const n=c.getSize();await(null===(o=p.beforeEachStep)||void 0===o?void 0:o.call(p,c,t,e)),await p.stringifyStep(c,t,e),await(null===(s=p.afterEachStep)||void 0===s?void 0:s.call(p,c,t,e));const a=c.getSize();u.push(n,a-n)}return await(null===(l=p.afterAllSteps)||void 0===l?void 0:l.call(p,c,e)),c.appendLine("//# recorderSourceMap="+function(e){const t=[];for(const n of e)t.push(H(n));return t.join("")}(u)),c.toString()}async function U(e,t){var n,a,i,r;t||(t={});let o=t.extension;o||(o=new B),t.indentation||(t.indentation="  ");const s=null!==(n=t.writer)&&void 0!==n?n:new w(null!==(a=t.indentation)&&void 0!==a?a:"  ");return await(null===(i=o.beforeEachStep)||void 0===i?void 0:i.call(o,s,e)),await o.stringifyStep(s,e),await(null===(r=o.afterEachStep)||void 0===r?void 0:r.call(o,s,e)),s.toString()}function X(e){return e.trim().startsWith("//# recorderSourceMap=")}function K(e){const t=e.split("\n");for(let e=t.length-1;e>=0;e--){const n=t[e];if(X(n))return q(n.trim().substring("//# recorderSourceMap=".length))}}function Y(e){return e.split("\n").filter((e=>!X(e))).join("\n")}new WeakSet;var G;new WeakMap,new WeakMap,new WeakMap;class Q extends s{async beforeAllSteps(e){e.appendLine("import url from 'url';"),e.appendLine("import { createRunner } from '@puppeteer/replay';"),e.appendLine(""),e.appendLine("export async function run(extension) {").startBlock(),e.appendLine("const runner = await createRunner(extension);"),e.appendLine(""),e.appendLine("await runner.runBeforeAllSteps();"),e.appendLine("")}async afterAllSteps(e){e.appendLine(""),e.appendLine("await runner.runAfterAllSteps();").endBlock().appendLine("}"),e.appendLine(""),e.appendLine("if (process && import.meta.url === url.pathToFileURL(process.argv[1]).href) {").startBlock().appendLine("run()").endBlock().appendLine("}")}async stringifyStep(e,t){e.appendLine(`await runner.runStep(${m(t,e.getIndent())});`)}}function Z(e){var a;return Boolean(e.type===t.Navigate||(null===(a=e.assertedEvents)||void 0===a?void 0:a.some((e=>e.type===n.Navigation))))}function ee(e){for(const n of e.steps)if(n.type===t.SetViewport)return n.isMobile;return!1}class te extends B{constructor(){super(...arguments),G.set(this,!1)}async beforeAllSteps(e,t){e.appendLine("const fs = require('fs');"),await super.beforeAllSteps(e,t),e.appendLine("const lhApi = await import('lighthouse'); // v10.0.0 or later"),e.appendLine(`const flags = ${m({screenEmulation:{disabled:!0}},e.getIndent())}`),ee(t)?e.appendLine("const config = undefined;"):e.appendLine("const config = lhApi.desktopConfig;"),e.appendLine(`const lhFlow = await lhApi.startFlow(page, {name: ${m(t.title,e.getIndent())}, config, flags});`)}async stringifyStep(e,n,a){if(n.type===t.SetViewport)return void await super.stringifyStep(e,n,a);const i=Z(n);i?(p(this,G,"f")&&(e.appendLine("await lhFlow.endTimespan();"),c(this,G,!1,"f")),e.appendLine("await lhFlow.startNavigation();")):p(this,G,"f")||(e.appendLine("await lhFlow.startTimespan();"),c(this,G,!0,"f")),await super.stringifyStep(e,n,a),i&&e.appendLine("await lhFlow.endNavigation();")}async afterAllSteps(e,t){p(this,G,"f")&&e.appendLine("await lhFlow.endTimespan();"),e.appendLine("const lhFlowReport = await lhFlow.generateReport();"),e.appendLine("fs.writeFileSync(__dirname + '/flow.report.html', lhFlowReport)"),await super.afterAllSteps(e,t)}}G=new WeakMap;new WeakMap,new WeakMap,new WeakMap;var ne=Object.freeze({__proto__:null,EXTENSION_PREFIX:"extension_",ExtensionConverter:class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}getId(){return"extension_"+this.#e}getFormatName(){return this.#t.getName()}getMediaType(){return this.#t.getMediaType()}getFilename(e){const t=this.#n(this.#t.getMediaType());return`${e.title}${t}`}async stringify(e){const t=await this.#t.stringify(e),n=K(t);return[Y(t),n]}async stringifyStep(e){return await this.#t.stringifyStep(e)}#n(e){switch(e){case"application/json":return".json";case"application/javascript":case"text/javascript":return".js";case"application/typescript":case"text/typescript":return".ts";default:return""}}}});var ae=Object.freeze({__proto__:null,JSONConverter:class{#a;constructor(e){this.#a=e}getId(){return"json"}getFormatName(){return"JSON"}getFilename(e){return`${e.title}.json`}async stringify(e){const t=await J(e,{extension:new l,indentation:this.#a}),n=K(t);return[Y(t),n]}async stringifyStep(e){return await U(e,{extension:new l,indentation:this.#a})}getMediaType(){return"application/json"}}});var ie=Object.freeze({__proto__:null,LighthouseConverter:class{#a;constructor(e){this.#a=e}getId(){return"lighthouse"}getFormatName(){return"Puppeteer (including Lighthouse analysis)"}getFilename(e){return`${e.title}.js`}async stringify(e){const t=await J(e,{extension:new te,indentation:this.#a}),n=K(t);return[Y(t),n]}async stringifyStep(e){return await U(e,{indentation:this.#a})}getMediaType(){return"text/javascript"}}});var re=Object.freeze({__proto__:null,PuppeteerConverter:class{#a;constructor(e){this.#a=e}getId(){return"puppeteer"}getFormatName(){return"Puppeteer"}getFilename(e){return`${e.title}.js`}async stringify(e){const t=await J(e,{indentation:this.#a}),n=K(t);return[Y(t),n]}async stringifyStep(e){return await U(e,{indentation:this.#a})}getMediaType(){return"text/javascript"}}});var oe=Object.freeze({__proto__:null,PuppeteerReplayConverter:class{#a;constructor(e){this.#a=e}getId(){return"@puppeteer/replay"}getFormatName(){return"@puppeteer/replay"}getFilename(e){return`${e.title}.js`}async stringify(e){const t=await J(e,{extension:new Q,indentation:this.#a}),n=K(t);return[Y(t),n]}async stringifyStep(e){return await U(e,{extension:new Q})}getMediaType(){return"text/javascript"}}});export{a as Converter,ne as ExtensionConverter,ae as JSONConverter,ie as LighthouseConverter,re as PuppeteerConverter,oe as PuppeteerReplayConverter};
